package com.rocsea.robot.template;

import com.rocsea.robot.config.build.TemplateInfo;
import com.rocsea.robot.model.entity.StepAttributeDO;
import com.rocsea.robot.model.entity.TransformationDO;
import org.springframework.beans.factory.InitializingBean;

import java.io.IOException;
import java.text.ParseException;
import java.util.List;

/**
 * @Author RocSea
 * @Date 2023/1/17
 */
public interface Template extends InitializingBean {
    String processTransformation(TransformationDO transformationDO);

    String processTableInput(List<StepAttributeDO> stepAttributeDOS) throws IOException;

    String processQueryFromTableName(List<StepAttributeDO> stepAttributeDOS) throws IOException;

    String processBatchInsertOrUpdate(List<StepAttributeDO> stepAttributeDOS);

    String processSqlReplace(String valueStr);

    String processKettlePack();

    String processKettleTaskConfig() throws ParseException;

    TemplateInfo getTemplateInfo();
}
